Projet à Fichiers Multiples et Includes en PHP

Header :

Lorsque vous travaillez sur des projets web de taille significative, il est souvent judicieux d'organiser votre code en plusieurs fichiers pour une gestion plus facile et une meilleure maintenance. PHP offre des fonctionnalités telles que les directives include et require qui permettent de découper le code en morceaux réutilisables et de les inclure dans d'autres fichiers.


Organisation des Fichiers

Un projet à fichiers multiples implique de diviser le code en plusieurs fichiers en fonction de leur rôle et de leur responsabilité. Une structure commune pourrait ressembler à ceci :

projet/
|-- includes/
|   |-- header.php
|   |-- footer.php
|-- pages/
|   |-- accueil.php
|   |-- about.php
|-- index.php
  • Le dossier includes contient des fichiers qui peuvent être inclus sur plusieurs pages, tels que l'en-tête (header.php) et le pied de page (footer.php).
  • Le dossier pages contient des fichiers spécifiques à chaque page du site, comme la page d'accueil (accueil.php) et la page "À propos" (about.php).
  • index.php est le fichier principal qui peut inclure d'autres fichiers en fonction de la page demandée.

Utilisation de include et require

include

La directive include est utilisée pour inclure un fichier dans un autre. Si le fichier spécifié n'est pas trouvé, le script continue à s'exécuter avec un avertissement.

<!-- index.php -->
<?php
include 'includes/header.php';
include 'pages/accueil.php';
include 'includes/footer.php';
?>

require

La directive require est similaire à include, mais si le fichier spécifié n'est pas trouvé, une erreur fatale est générée et le script s'arrête.

<!-- index.php -->
<?php
require 'includes/header.php';
require 'pages/accueil.php';
require 'includes/footer.php';
?>

Il est souvent recommandé d'utiliser require pour les fichiers essentiels à la logique de votre application, comme les fichiers de configuration, et include pour les éléments facultatifs.

Avantages de l'Utilisation d'Includes

  1. Réutilisabilité du Code : Les fichiers inclus peuvent être utilisés sur plusieurs pages, évitant ainsi la duplication de code.
  2. Facilité de Maintenance : Des modifications apportées à un fichier inclus se répercutent sur toutes les pages qui l'utilisent.
  3. Meilleure Organisation : La séparation du code en fichiers distincts facilite la gestion et la compréhension du code.

Conclusion

L'utilisation de fichiers multiples et d'inclusions en PHP est une pratique courante pour organiser et structurer vos projets web. Cela rend votre code plus lisible, réutilisable et plus facile à entretenir. En planifiant judicieusement votre architecture de fichiers, vous contribuez à la scalabilité et à la robustesse de votre application.

Exercice

La pratique régulière sera votre meilleur ami pour apprendre à structurer un projet, mais pour le moment, je vais vous demander de mettre en pratique ce que l'on vient de voir. Créez donc maintenant un nouveau dossier qui contiendra votre premier projet PHP. Oui, maintenant, on ne parle plus de fichier, mais bien de projet ! Respectez cette structure :

  • RestaurantReservation/

    • Includes/
      • header.php
      • navbar.php
      • footer.php
    • Views/
      • index.php
      • form.php
      • formRefused.php
      • formAccepted.php
    • Resources/
      • Images/
      • Videos/
      • Docs/
    • Scripts/
      • Lorem.js
    • Style/
      • base.css
      • header.css
      • navbar.css
      • footer.css
      • welcome.css
      • form.css
      • formRefused.css
      • formAccepted.css
  • Pour le moment, tout ne sera pas utilisé (les fichiers CSS sont principalement pour vous vous amuser, je n'en ferai sûrement rien).

  • Prenez le fichier de formulaires que vous deviez préparer pour aujourd'hui, et prenons ensemble le temps de découper les différentes parties.

  • Coupez les parties de votre formulaires pour les mettre dans les include correspondant (Header, Footer, Navbar).

  • Laissez dans form.php uniquement ce qui concerne le formulaire (head+ body).

  • Incluez dans form.php (et toutes les futures pages que vous créerez) header, footer et navbar pour récupérer le visuel de votre formulaire originel.

  • Créez votre index.php. Incluez les différentes parties communes à tout votre site et mettez-y simplement un h1 "Bienvenue sur le site de insérer nom de votre restaurant"

  • Créez votre formRefused.php et formAccepted.php. Les deux fichiers incluent tous les éléments de base de votre site, dans le body, l'un inclus un message (dans une balise p) formulaire bien envoyé, l'autre, un message formulaire refusé. Nous jouerons plus tard avec ces fichiers.

  • Utilisez, à tout moment, les fichiers CSS, JS, et les dossiers de ressources pour améliorer votre site à votre guise ! (Image, style, scripts). Je vous impose ici de les créer pour avoir une idée de projet, mais je n'aurais sans doutes pas l'occasion, à mon cours, ici, de créer de A à Z un site reprenant tout ces éléments, cela ne vous empêche pas vous des bien les utiliser du moment que ça ne fait pas bugger votre site (attention aux scripts !).

  • Une fois tout ceci fini, si vous lancez votre projet, vous devriez vous retrouver sur votre index, et vous pourrez naviguer simplement de votre formulaire à votre page d'accueil à l'aide de la navbar. Le header, le footer et la navbar devraient se trouver sur toutes vos pages, le reste, je vous laisse customiser le temps que les plus en retard vous rattrapent.